,

La Radio Définie par Logicielle (SDR) avec le chipset rtl2832u

Introduction

La radio logicielle, ou SDR pour Software Definied Radio, consiste à utiliser un ordinateur et une suite logicielle pour recevoir/émettre, moduler/démoduler, crypter/décrypter des signaux Radio. La pratique s'est développée dans les années 90 avec le perfectionnement du matériel informatique.

Antti Palosaari a découvert que contrairement aux tuners TNT habituels, le rtl2832u permettait de recevoir directement (sans traitements matériels) les signaux radio du fait de ses fonctionnalités DAB/DAB+/FM.

Des drivers permettant son utilisation en SDR ont été développés par osmocom et sont utilisables avec un bon nombre de logiciels.

Ce tutoriel a pour objectif de décrire les procédures d'installation et d'utilisation du rtl2832u.

Choix du matériel

http://sdr.osmocom.org/trac/raw-attachment/wiki/rtl-sdr/ezcap_top.jpg?400 |

Installation

L'installation des bibliothèques RTL-SDR, de GnuRadio muni de ses extensions nécessaires est automatisée par l'utilisation de ce script :

wget http://www.sbrac.org/files/build-gnuradio
chmod +x build-gnuradio
./build-gnuradio

Le script s'assure que toutes les dépendances sont installées et installe le nécessaire.

Premiers pas

Commandes RTL-SDR

rtl_test

rtl_test -t

Celle-ci varier en fonction du matériel et de sa température d'utilisation :

Found 1 device(s):
0:  Generic RTL2832U (e.g. hama nano)

Using device 0: Generic RTL2832U (e.g. hama nano)
Found Elonics E4000 tuner
Supported gain values (18): -1.0 1.5 4.0 6.5 9.0 11.5 14.0 16.5 19.0 21.5 24.0 29.0 34.0 42.0 43.0 45.0 47.0 49.0 
Benchmarking E4000 PLL...
[E4K] PLL not locked for 51000000 Hz!
[E4K] PLL not locked for 2219000000 Hz!
[E4K] PLL not locked for 1109000000 Hz!
[E4K] PLL not locked for 1237000000 Hz!
E4K range: 52 to 2218 MHz
E4K L-band gap: 1109 to 1237 MHz
rtl_test -s 3.2e6

Un taux de 2.4e6 doit être possible à traver une connection tcp connections (voir rtl_tcp). Un taux de 2.88e6 devrait pouvoir être obtenu sans perte, mais tout dépend de la puissance de votre PC.

rtl_sdr

Cette commande peut être utilisée pour lancer un enregistrement. Par exemple, pour s'accorder à 392.0 MHz avec un taux de 1.8 MS/s :

rtl_sdr /tmp/capture.bin -s 1.8e6 -f 392e6

La sortie peut à la fois être se faire dans un fichier ou un tampon de type fifo.

rtl_tcp

Nous pouvons aussi piloter notre récepteur avec d'autres appareils via le web en lançant la commande suivante :

rtl_tcp -a 192.168.1.2 -p 1234
Found 1 device(s).
Found Elonics E4000 tuner
Using Generic RTL2832U (e.g. hama nano)
Tuned to 100000000 Hz.
listening...

Il est alors possible de se connecter à un récepteur distant avec GnuRadio en utilisant l'argument rtl_tcp=192.168.1.2:1234 dans l'entrée OsmoSDR afin d'en contrôler les paramètres d'acquisition (fréquence, gain, …) avec gnuradio-companion de recevoir les échantillons.

GnuRadio

GQRX

Exemples d'utilisation